Objective ML: An Effective Object-Oriented Extension to ML
نویسندگان
چکیده
Objective ML is a small practical extension to ML with objects and top level classes. It is fully compatible with ML; its type system is based on ML polymorphism, record types with polymorphic access, and a better treatment of type abbreviations. Objective ML allows for most features of object-oriented languages including multiple inheritance, methods returning self and binary methods as well as parametric classes. This demonstrates that objects can be added to strongly typed languages based on ML polymorphism. c © 1997 John Wiley & Sons
منابع مشابه
O'Camelot: adding objects to a resource-aware functional language
We outline an object-oriented extension to Camelot, a functional language in the ML family designed for resource aware computation. Camelot is compiled for the Java Virtual Machine, and our extension allows Camelot programs to interact easily with the Java object system, harnessing the power of Java libraries and allowing Java programs to incorporate resource-bounded Camelot code.2
متن کاملDeclarative Semantics in Object-Oriented Software Development - A Taxonomy and Survey
One of the modern paradigms to develop an application is object oriented analysis and design. In this paradigm, there are several objects and each object plays some specific roles in applications. In an application, we must distinguish between procedural semantics and declarative semantics for their implementation in a specific programming language. For the procedural semantics, we can write a ...
متن کاملRecord Unboxing
This paper proposes a type-based optimization method that “unboxes” records whenever possible by flattening nested records and changing top-level tuples to multiple value passing. We first develop a type-based algorithm that infers whether each record expression is “rigid” or not, i.e. whether it requires heap allocation or not. This is based on the observation that the changes the representati...
متن کاملObject-Oriented Programming and Standard ML
This paper explores connections between object-oriented programming and Standard ML. In particular we show that F-bounded polymorphism can be expressed using ML's polymorphism and a programming technique we call wrapping. The encoding of F-bounded polymorphism can be used to encode classes as ML modules.
متن کاملA Study of Semantics, Types and Languages for Databases and Object-Oriented Programming
The purpose of this thesis is to investigate a type system for databases and object-oriented programming and to design a statically typed programming language for these applications. Such a language should ideally have a static type system that supports: polymorphism and static type inference, rich data structures and operations to represent various data models for databases including the relat...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- TAPOS
دوره 4 شماره
صفحات -
تاریخ انتشار 1998